#ifndef __DEVICE_KEYBOARD_H
#define __DEVICE_KEYBOARD_H
#include "global.h"
void keyboard_init(void); 
extern struct ioqueue kbd_buf;
struct guest_keyboard_ioqueue {
    unsigned char keyboard_buf[0x100];
    int head;
    int tail;
    unsigned short guest_cursor;
    bool guest_keyboard_state;
};
extern struct guest_keyboard_ioqueue guest_kbd_buf;

struct keyboard_buffer {
    unsigned char keyboard_buf[0x100];
    int head;
    int tail;
};
extern struct keyboard_buffer keyboard_buffer;
extern struct task_struct* keyboard_thread;
uint32_t* host_memory;
extern uint32_t* guest_memory_;
#endif